import React from 'react';
interface ButtonProps {
  children: React.ReactNode;
  variant?: 'primary' | 'secondary';
  size?: 'sm' | 'md' | 'lg';
  className?: string;
  onClick?: () => void;
  type?: 'button' | 'submit' | 'reset';
  ariaLabel?: string;
  href?: string;
}
export function Button({
  children,
  variant = 'primary',
  size = 'md',
  className = '',
  onClick,
  type = 'button',
  ariaLabel,
  href
}: ButtonProps) {
  const baseStyles = 'font-bold rounded inline-flex items-center justify-center transition-colors';
  const variantStyles = {
    primary: 'bg-[#06d6a0] text-[#0a2540] hover:bg-[#05c090]',
    secondary: 'bg-transparent border-2 border-[#06d6a0] text-[#06d6a0] hover:bg-[#06d6a0] hover:bg-opacity-10'
  };
  const sizeStyles = {
    sm: 'text-sm px-4 py-2',
    md: 'text-base px-6 py-3',
    lg: 'text-lg px-8 py-4'
  };
  const styles = `${baseStyles} ${variantStyles[variant]} ${sizeStyles[size]} ${className}`;
  if (href) {
    return <a href={href} className={styles} onClick={onClick} aria-label={ariaLabel}>
        {children}
      </a>;
  }
  return <button type={type} className={styles} onClick={onClick} aria-label={ariaLabel}>
      {children}
    </button>;
}